
package server.skill;



import handling.opcode.SendPacketOpcode;
import kotlin.Metadata;
import kotlin.jvm.internal.Intrinsics;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import tools.DateUtil;
import tools.data.output.MaplePacketLittleEndianWriter;

import java.awt.*;
import java.util.Iterator;
import java.util.List;















































































































































































































































































































































































































































































































































































































































@Metadata(mv = {1, 1, 16}, bv = {1, 0, 3}, k = 1, d1 = {"\000B\n\002\030\002\n\002\020\000\n\000\n\002\020\013\n\000\n\002\020\b\n\002\b\005\n\002\020 \n\000\n\002\030\002\n\002\b\002\n\002\030\002\n\000\n\002\030\002\n\002\b3\n\002\020\022\n\002\b\003\n\002\020\016\n\000\b\b\030\0002\0020\001B\001\022\b\b\002\020\002\032\0020\003\022\b\b\002\020\004\032\0020\005\022\b\b\002\020\006\032\0020\005\022\b\b\002\020\007\032\0020\005\022\b\b\002\020\b\032\0020\005\022\b\b\002\020\t\032\0020\005\022\016\b\002\020\n\032\b\022\004\022\0020\0050\013\022\b\b\002\020\f\032\0020\r\022\b\b\002\020\016\032\0020\005\022\b\b\002\020\017\032\0020\020\022\016\b\002\020\021\032\b\022\004\022\0020\0220\013\022\b\b\002\020\023\032\0020\005¢\006\002\020\024J\t\0206\032\0020\003HÆ\003J\t\0207\032\0020\020HÆ\003J\017\0208\032\b\022\004\022\0020\0220\013HÆ\003J\t\0209\032\0020\005HÆ\003J\t\020:\032\0020\005HÆ\003J\t\020;\032\0020\005HÆ\003J\t\020<\032\0020\005HÆ\003J\t\020=\032\0020\005HÆ\003J\t\020>\032\0020\005HÆ\003J\017\020?\032\b\022\004\022\0020\0050\013HÆ\003J\t\020@\032\0020\rHÆ\003J\t\020A\032\0020\005HÆ\003J\001\020B\032\0020\0002\b\b\002\020\002\032\0020\0032\b\b\002\020\004\032\0020\0052\b\b\002\020\006\032\0020\0052\b\b\002\020\007\032\0020\0052\b\b\002\020\b\032\0020\0052\b\b\002\020\t\032\0020\0052\016\b\002\020\n\032\b\022\004\022\0020\0050\0132\b\b\002\020\f\032\0020\r2\b\b\002\020\016\032\0020\0052\b\b\002\020\017\032\0020\0202\016\b\002\020\021\032\b\022\004\022\0020\0220\0132\b\b\002\020\023\032\0020\005HÆ\001J\023\020C\032\0020\0032\b\020D\032\004\030\0010\001HÖ\003J\006\020E\032\0020FJ\016\020E\032\0020F2\006\020G\032\0020\005J\t\020H\032\0020\005HÖ\001J\t\020I\032\0020JHÖ\001R\032\020\016\032\0020\005X\016¢\006\016\n\000\032\004\b\025\020\026\"\004\b\027\020\030R\032\020\023\032\0020\005X\016¢\006\016\n\000\032\004\b\031\020\026\"\004\b\032\020\030R \020\021\032\b\022\004\022\0020\0220\013X\016¢\006\016\n\000\032\004\b\033\020\034\"\004\b\035\020\036R\032\020\006\032\0020\005X\016¢\006\016\n\000\032\004\b\037\020\026\"\004\b \020\030R\032\020\002\032\0020\003X\016¢\006\016\n\000\032\004\b\002\020!\"\004\b\"\020#R\032\020\004\032\0020\005X\016¢\006\016\n\000\032\004\b$\020\026\"\004\b%\020\030R\032\020\017\032\0020\020X\016¢\006\016\n\000\032\004\b&\020'\"\004\b(\020)R\032\020\f\032\0020\rX\016¢\006\016\n\000\032\004\b*\020+\"\004\b,\020-R\032\020\b\032\0020\005X\016¢\006\016\n\000\032\004\b.\020\026\"\004\b/\020\030R\032\020\t\032\0020\005X\016¢\006\016\n\000\032\004\b0\020\026\"\004\b1\020\030R \020\n\032\b\022\004\022\0020\0050\013X\016¢\006\016\n\000\032\004\b2\020\034\"\004\b3\020\036R\032\020\007\032\0020\005X\016¢\006\016\n\000\032\004\b4\020\026\"\004\b5\020\030¨\006K"}, d2 = {"Lserver/skill/MapleForceAtom;", "", "isFrom", "", "ownerID", "", "fromMobOID", "type", "skillID", "toMobOID", "toMobOIDs", "", "rectangle", "Ljava/awt/Rectangle;", "cosumeItemID", "point", "Ljava/awt/Point;", "forceAtomEntry", "Lserver/skill/ForceAtomEntry;", "flameDirection", "(ZIIIIILjava/util/List;Ljava/awt/Rectangle;ILjava/awt/Point;Ljava/util/List;I)V", "getCosumeItemID", "()I", "setCosumeItemID", "(I)V", "getFlameDirection", "setFlameDirection", "getForceAtomEntry", "()Ljava/util/List;", "setForceAtomEntry", "(Ljava/util/List;)V", "getFromMobOID", "setFromMobOID", "()Z", "setFrom", "(Z)V", "getOwnerID", "setOwnerID", "getPoint", "()Ljava/awt/Point;", "setPoint", "(Ljava/awt/Point;)V", "getRectangle", "()Ljava/awt/Rectangle;", "setRectangle", "(Ljava/awt/Rectangle;)V", "getSkillID", "setSkillID", "getToMobOID", "setToMobOID", "getToMobOIDs", "setToMobOIDs", "getType", "setType", "component1", "component10", "component11", "component12", "component2", "component3", "component4", "component5", "component6", "component7", "component8", "component9", "copy", "equals", "other", "getPacket", "", "sumOid", "hashCode", "toString", "", "Server"})
 public final class MapleForceAtom
         {
       private boolean isFrom;
       private int ownerID;
       private int fromMobOID;
       private int type;
       private int skillID;
       private int toMobOID;

    @NotNull
     private List<Integer> toMobOIDs;

    @NotNull
     private Rectangle rectangle;
       private int cosumeItemID;

    @NotNull
     private Point point;

    @NotNull
     private List<ForceAtomEntry> forceAtomEntry;
       private int flameDirection;



    public MapleForceAtom(boolean isFrom, int ownerID, int fromMobOID, int type, int skillID, int toMobOID, @NotNull List<Integer> toMobOIDs, @NotNull Rectangle rectangle, int cosumeItemID, @NotNull Point point, @NotNull List<ForceAtomEntry> forceAtomEntry, int flameDirection) {
        /* 645 */
        this.isFrom = isFrom;
        this.ownerID = ownerID;
        this.fromMobOID = fromMobOID;
        this.type = type;
        this.skillID = skillID;
        this.toMobOID = toMobOID;
        this.toMobOIDs = toMobOIDs;
        this.rectangle = rectangle;
        this.cosumeItemID = cosumeItemID;
        this.point = point;
        this.forceAtomEntry = forceAtomEntry;
        this.flameDirection = flameDirection;
        /* 646 */
    }

    public final boolean isFrom() {
        return this.isFrom;
    }

    public final void setFrom(boolean a) {
        this.isFrom = a;
    }

    /* 647 */
    public final int getOwnerID() {
        return this.ownerID;
    }

    public final void setOwnerID(int a) {
        this.ownerID = a;
    }

    /* 648 */
    public final int getFromMobOID() {
        return this.fromMobOID;
    }

    public final void setFromMobOID(int a) {
        this.fromMobOID = a;
    }

    /* 649 */
    public final int getType() {
        return this.type;
    }

    public final void setType(int a) {
        this.type = a;
    }

    /* 650 */
    public final int getSkillID() {
        return this.skillID;
    }

    public final void setSkillID(int a) {
        this.skillID = a;
    }

    /* 651 */
    public final int getToMobOID() {
        return this.toMobOID;
    }

    public final void setToMobOID(int a) {
        this.toMobOID = a;
    }

    @NotNull
    /* 652 */ public final List<Integer> getToMobOIDs() {
        return this.toMobOIDs;
    }

    public final void setToMobOIDs(@NotNull List<Integer> a) {
        Intrinsics.checkParameterIsNotNull(a, "a");
        this.toMobOIDs = a;
    }

    @NotNull
    /* 653 */ public final Rectangle getRectangle() {
        return this.rectangle;
    }

    public final void setRectangle(@NotNull Rectangle a) {
        Intrinsics.checkParameterIsNotNull(a, "a");
        this.rectangle = a;
    }

    /* 654 */
    public final int getCosumeItemID() {
        return this.cosumeItemID;
    }

    public final void setCosumeItemID(int a) {
        this.cosumeItemID = a;
    }

    @NotNull
    /* 655 */ public final Point getPoint() {
        return this.point;
    }

    public final void setPoint(@NotNull Point a) {
        Intrinsics.checkParameterIsNotNull(a, "a");
        this.point = a;
    }

    @NotNull
    /* 656 */ public final List<ForceAtomEntry> getForceAtomEntry() {
        return this.forceAtomEntry;
    }

    public final void setForceAtomEntry(@NotNull List<ForceAtomEntry> a) {
        Intrinsics.checkParameterIsNotNull(a, "a");
        this.forceAtomEntry = a;
    }

    /* 657 */
    public final int getFlameDirection() {
        return this.flameDirection;
    }

    public final void setFlameDirection(int a) {
        this.flameDirection = a;
    }



    @NotNull
     public final byte[] getPacket() {
        /* 661 */
        return getPacket(0);

    }




    @NotNull
     public final byte[] getPacket(int sumOid) {
        /* 667 */
        MaplePacketLittleEndianWriter mplew = new MaplePacketLittleEndianWriter();

        /* 669 */
        mplew.writeShort(SendPacketOpcode.FORCEATOM_CREATE.getValue());
        /* 670 */
        mplew.writeBool(this.isFrom);
        /* 671 */
        mplew.writeInt(this.ownerID);
        /* 672 */
        if (this.isFrom) {
            /* 673 */
            mplew.writeInt(this.fromMobOID);

        }
        /* 675 */
        mplew.writeInt(this.type);
        /* 676 */
        if (this.type > 0 && this.type != 9 && this.type != 14 && this.type != 35 && this.type != 42)
            /* 677 */ {
            if (this.type != 36 && this.type != 37 && this.type != 29)
                /* 678 */ {
                Iterable<Integer> iterable;
                Iterator<Integer> iterator1;
                mplew.write((this.type == 61) ? 0 : 1);
                /* 679 */
                switch (this.type) {
                    case 2:
                    case 3:
                    case 6:
                    case 7:
                    case 11:
                    case 12:
                    case 13:
                    case 17:
                    case 19:
                    case 20:
                    case 21:
                    case 23:
                    case 24:
                    case 25:
                    case 27:
                    case 28:
                    case 30:
                    case 32:
                    case 34:
                    case 38:
                    case 39:
                    case 40:
                    case 41:
                    case 47:
                    case 48:
                    case 49:
                    case 56:
                    case 58:
                    case 60:

                    case 61:
                        /* 681 */
                        mplew.writeInt(this.toMobOIDs.size());
                        /* 682 */
                        iterable = this.toMobOIDs;





























































































































                        /* 808 */
                        iterator1 = iterable.iterator();
                        if (iterator1.hasNext()) {
                            Object element$iv = iterator1.next();
                            int p1 = ((Number) element$iv).intValue();
                            mplew.writeInt(p1);
                        } break;

                    default:
                        /* 810 */
                        mplew.writeInt(this.toMobOID);
                        break;
                }
            } mplew.writeInt(this.skillID);
        } Iterable<ForceAtomEntry> $receiver$iv = this.forceAtomEntry;
        Iterator<ForceAtomEntry> iterator = $receiver$iv.iterator();
        if (iterator.hasNext()) {
            Object element$iv = iterator.next();
            ForceAtomEntry it = (ForceAtomEntry) element$iv;

            mplew.write(1);

            mplew.writeInt(it.getOid());

            mplew.writeInt(it.getColor());

            mplew.writeInt(it.getFirstImpactMin());

            mplew.writeInt(it.getFirstImpactMax());

            mplew.writeInt(it.getSecondImpactMin());

            mplew.writeInt(it.getSecondImpactMax());

            mplew.writePosAsInt(it.getPoint());

            mplew.writeInt(DateUtil.getTime(it.getCreatTime()));

            mplew.writeInt(it.getMobCount());

            mplew.writeInt(it.getY());

            mplew.writeInt(0);
        }


        mplew.write(0);

        switch (this.type) {

            case 11:

                mplew.writeRect(this.rectangle);

                mplew.writeInt(this.cosumeItemID);

                break;

            case 9:

            case 15:

                mplew.writeRect(this.rectangle);

                break;

            case 17:

                mplew.writeInt(this.flameDirection);

                mplew.writeInt(500);

                break;

            case 4:

            case 16:

            case 18:

            case 20:

            case 26:

            case 30:

            case 33:

            case 35:

                mplew.writePosAsInt(this.point);

                break;

            case 27:

                mplew.writeInt(-500);

                mplew.writeInt(-350);

                mplew.writeInt(500);

                mplew.writeInt(350);

                mplew.writeInt(0);

                break;

            case 28:

            case 34:

                mplew.writeRect(this.rectangle);

                mplew.writeInt(0);

                break;

            case 36:

                mplew.writeInt(5);

                mplew.writeInt(550);

                mplew.writeInt(0);

                mplew.writeInt(-300);

                mplew.writeInt(-300);

                mplew.writeInt(300);

                mplew.writeInt(300);

                mplew.writeInt(-50);

                mplew.writeInt(-50);

                mplew.writeInt(50);

                mplew.writeInt(50);

                mplew.writeInt(0);

                break;

            case 39:

                mplew.writeInt(0);

                mplew.writeInt(0);

                mplew.writeInt(0);

                mplew.writeInt(-100);

                mplew.writeInt(-100);

                mplew.writeInt(100);

                mplew.writeInt(100);

                break;

            case 37:

                mplew.writeInt(0);

                mplew.writeInt(-300);

                mplew.writeInt(-300);

                mplew.writeInt(300);

                mplew.writeInt(300);

                mplew.writeInt(200);

                mplew.writeInt(0);

                break;

            case 29:

                mplew.writeRect(this.rectangle);

                mplew.writePosAsInt(this.point);

                break;

            case 42:

                mplew.writeInt(0);

                mplew.writeInt(0);

                break;

            case 49:

                mplew.writeInt(this.cosumeItemID);

                mplew.writeInt(sumOid);

                mplew.writeRect(this.rectangle);

                break;

            case 58:

                mplew.writeRect(this.rectangle);

                mplew.writeInt(2);

                mplew.writePosAsInt(this.point);

                break;

            case 61:

                mplew.writePosAsInt(this.point);

                break;

        }

        Intrinsics.checkExpressionValueIsNotNull(mplew.getPacket(), "mplew.packet");

        return mplew.getPacket();

    }



    public MapleForceAtom() {

//        this(false, 0, 0, 0, 0, 0, null, null, 0, null, null, 0, 4095, null);

    }



    public final boolean component1() {

        return this.isFrom;

    }



    public final int component2() {

        return this.ownerID;

    }



    public final int component3() {

        return this.fromMobOID;

    }



    public final int component4() {

        return this.type;

    }



    public final int component5() {

        return this.skillID;

    }



    public final int component6() {

        return this.toMobOID;

    }



    @NotNull
     public final List<Integer> component7() {

        return this.toMobOIDs;

    }



    @NotNull
     public final Rectangle component8() {

        return this.rectangle;

    }



    public final int component9() {

        return this.cosumeItemID;

    }



    @NotNull
     public final Point component10() {

        return this.point;

    }



    @NotNull
     public final List<ForceAtomEntry> component11() {

        return this.forceAtomEntry;

    }



    public final int component12() {

        return this.flameDirection;

    }



    @NotNull
     public final MapleForceAtom copy(boolean isFrom, int ownerID, int fromMobOID, int type, int skillID, int toMobOID, @NotNull List<Integer> toMobOIDs, @NotNull Rectangle rectangle, int cosumeItemID, @NotNull Point point, @NotNull List<ForceAtomEntry> forceAtomEntry, int flameDirection) {

        Intrinsics.checkParameterIsNotNull(toMobOIDs, "toMobOIDs");

        Intrinsics.checkParameterIsNotNull(rectangle, "rectangle");

        Intrinsics.checkParameterIsNotNull(point, "point");

        Intrinsics.checkParameterIsNotNull(forceAtomEntry, "forceAtomEntry");

        return new MapleForceAtom(isFrom, ownerID, fromMobOID, type, skillID, toMobOID, toMobOIDs, rectangle, cosumeItemID, point, forceAtomEntry, flameDirection);

    }



    @NotNull
     public String toString() {

        return "MapleForceAtom(isFrom=" + this.isFrom + ", ownerID=" + this.ownerID + ", fromMobOID=" + this.fromMobOID + ", type=" + this.type + ", skillID=" + this.skillID + ", toMobOID=" + this.toMobOID + ", toMobOIDs=" + this.toMobOIDs + ", rectangle=" + this.rectangle + ", cosumeItemID=" + this.cosumeItemID + ", point=" + this.point + ", forceAtomEntry=" + this.forceAtomEntry + ", flameDirection=" + this.flameDirection + ")";

    }



    public int hashCode() {

        if (this.isFrom) ;

        return ((((((((((1 * 31 + this.ownerID) * 31 + this.fromMobOID) * 31 + this.type) * 31 + this.skillID) * 31 + this.toMobOID) * 31 + ((this.toMobOIDs != null) ? this.toMobOIDs.hashCode() : 0)) * 31 + ((this.rectangle != null) ? this.rectangle.hashCode() : 0)) * 31 + this.cosumeItemID) * 31 + ((this.point != null) ? this.point.hashCode() : 0)) * 31 + ((this.forceAtomEntry != null) ? this.forceAtomEntry.hashCode() : 0)) * 31 + this.flameDirection;

    }



    public boolean equals(@Nullable Object paramObject) {

        if (this != paramObject) {

            if (paramObject instanceof MapleForceAtom) {

                MapleForceAtom mapleForceAtom = (MapleForceAtom) paramObject;

                if (this.isFrom == mapleForceAtom.isFrom && this.ownerID == mapleForceAtom.ownerID && this.fromMobOID == mapleForceAtom.fromMobOID && this.type == mapleForceAtom.type && this.skillID == mapleForceAtom.skillID && this.toMobOID == mapleForceAtom.toMobOID && Intrinsics.areEqual(this.toMobOIDs, mapleForceAtom.toMobOIDs) && Intrinsics.areEqual(this.rectangle, mapleForceAtom.rectangle) && this.cosumeItemID == mapleForceAtom.cosumeItemID && Intrinsics.areEqual(this.point, mapleForceAtom.point) && Intrinsics.areEqual(this.forceAtomEntry, mapleForceAtom.forceAtomEntry) && this.flameDirection == mapleForceAtom.flameDirection)
                     return true;

            }

        } else {

            return true;

        }

        return false;

    }

}


/* Location:              C:\PGX\Server.jar!\server\skill\MapleForceAtom.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       1.1.3
 */